Page({
  /**
   * 页面的初始数据
   */
  data: {
    dengjiIdArr: [], // 等级id数组
    dengjiArr: [],    // 等级名称数组
    leiBieIdArr: [],  // 类别id数组
    leiBieArr: [],    // 类别名称数组
    dengjiindex: 0,   // 等级当前下标
    leiBieIndex: 0,   // 类别当前下标
    date: null,       // 当前选择的时间
    endtime: null,    // 可选最后时间
    text: '',         // 情况说明
  },

  // 输入框的输入事件处理
  onInput: function (e) {
    this.setData({
      text: e.detail.value,
    });
  },

  // 确定按钮点击事件，保存选择的数据
  clickok: function () {
    // 获取选中的类别和等级名称
    var selectedLeiBie = this.data.leiBieArr[this.data.leiBieIndex];
    var selectedDengji = this.data.dengjiArr[this.data.dengjiindex];
    var selectedDengjiId = this.data.dengjiIdArr[this.data.dengjiindex];  // 获取等级ID
    var selectedDate = this.data.date;  // 获取选中的时间
    var selectedText = this.data.text;  // 获取情况说明的文本
    
    // 输出选中的值，调试用
    console.log("选中的咨询类别: " + selectedLeiBie);
    console.log("选中的咨询等级: " + selectedDengji);
    console.log("选中的等级ID: " + selectedDengjiId);  // 输出等级ID
    console.log("选中的时间: " + selectedDate);
    console.log("情况说明: " + selectedText);
  

    if (!selectedDengji) {
      console.error("咨询等级未正确选择");
    }
  

    var zixunyuyue = {
      leiBieId: this.data.leiBieIdArr[this.data.leiBieIndex],
      leiBie: selectedLeiBie,
      dengjiId: selectedDengjiId,  // 使用等级ID
      dengji: selectedDengji,      // 依然显示等级名称
      date: selectedDate,  // 添加时间
      text: selectedText,  // 添加情况说明
      area: "",            // 固定为空字符串
      gender: ""           // 固定为空字符串
    };
  
    // 将数据存储到本地缓存
    wx.setStorageSync('zixunyuyue', zixunyuyue);
  
    // 将数据编码为查询字符串，并传递到下一个页面
    wx.navigateTo({
      url: `../zixunyuyuedtail/zixunyuyuedtail?filters=${encodeURIComponent(JSON.stringify({
        leiBie: selectedLeiBie,
        dengji: selectedDengji,
        dengjiId: selectedDengjiId,  // 传递等级ID
        date: selectedDate,
        text: selectedText,
        area: "",
        gender: ""
      }))}`,
    });
  },

  // 返回首页
  clickback: function () {
    wx.switchTab({
      url: '../../../home/home',
    });
  },

  // 选择咨询类别
  leiBieS: function (ele) {
    this.setData({
      leiBieIndex: ele.detail.value
    });
  },

  // 选择咨询等级
  dengjiS: function (ele) {
    this.setData({
      dengjiindex: ele.detail.value
    });
  },

  // 选择日期
  bindDateChange: function (e) {
    this.setData({
      date: e.detail.value
    });
  },

  // 页面加载时获取咨询等级和咨询类别数据
  onShow() {
    let that = this;

    // 请求咨询等级
    wx.request({
      url: 'http://127.0.0.1:9090/filter/level',  // 调用后端接口获取咨询师等级
      success: (res) => {
        console.log(res);
        var temp = [];
        var idtemp = [];
        for (let item of res.data) {
          temp.push(item.levelName);  // 显示等级名称
          idtemp.push(item.levelId);  // 获取等级ID
        }
        that.setData({
          dengjiArr: temp,
          dengjiIdArr: idtemp
        });
      },
      fail: (res) => {
        console.error('获取咨询等级失败', res);
      }
    });

    // 请求咨询类别
    wx.request({
      url: 'http://127.0.0.1:9090/filter/extra',  // 调用后端接口获取咨询类别
      success: (res) => {
        console.log(res);
        that.setData({
          leiBieArr: res.data,
          leiBieIdArr: res.data
        });
      },
      fail: (res) => {
        console.error('获取咨询类别失败', res);
      }
    });

    // 获取当前日期和可选的最后时间
    const now = new Date();
    var date = now.getFullYear() + "-" + (now.getMonth() + 1) + "-" + now.getDate();
    const fiveDaysLater = new Date(now.getTime() + 5 * 24 * 60 * 60 * 1000);
    var dateend = fiveDaysLater.getFullYear() + "-" + (fiveDaysLater.getMonth() + 1) + "-" + fiveDaysLater.getDate();
    this.setData({
      date: date,
      endtime: dateend,
    });
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {},

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {},

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {},

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {},

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {},

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {},

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {}
});
